1. Field of the Invention
This invention relates to a method of data processing which includes error correction in, for example, digital communications. This invention also relates to an apparatus for data processing which includes error correction.
2. Description of the Related Art
It is known to use a CRC (cyclic redundancy check) code in detection of errors in data. According to some data communication formats, a stream of data representing voice information or audio information is divided into frames, and the data is transmitted frame by frame.
In the transmitter side of a known voice-data communication system, "m" bits of CRC code words (that is, error detection code words) are added to every "k" bits of first data representing voice information, so that the first data is converted to second data. Then, error correction code words are added to every "k+m" bits of the second data, and thereby the second data is converted to third data. The third data is transmitted frame by frame. Every frame of the third data contains "k+m" bits of the second data and the corresponding error correction code words.
Japanese published unexamined patent application 3-286623 discloses a sequence of processes implemented by a voice-data receiver side. In Japanese application 3-286623, received data is processed frame by frame. Specifically, every frame of the received data is subjected to a decoding process in response to error correction code words. An error or errors in every frame of the received data can be detected in the decoding process. If an error or errors in the present frame of the received data are detected in the decoding process, the present frame of the received data is discarded. In this case, the present frame of new data is generated by interpolation using the previous frame of the received data, or the present frame of muting data is generated. The present frame of the new data or the muting data is used by a voice recovering process. On the other hand, if any error in the present frame of the received data is not detected in the decoding process, the present frame of the decoding-resultant data is subjected to error detection using CRC code words. If an error or errors in the present frame of the decoding-resultant data are detected during the error detection, the present frame of the decoding-resultant data is discarded. In this case, the present frame of new data is generated by interpolation using the previous frame of the decoding-resultant data, or the present frame of muting data is generated. The present frame of the new data or the muting data is used by the voice recovering process. On the other hand, if any error in the present frame of the decoding-resultant data is not detected during the error detection, the present frame of the decoding-resultant data is used by the voice recovering process. The present frame of the new data, the muting data, or the decoding-resultant data is converted by the voice recovering process into original voice used as output voice.
Generally, some of errors in data can not be sensed by typical error detection using CRC code words. Accordingly, such errors tend to remain in the data converted into output voice. These errors cause noise in the output voice.